Oriented R-CNN
Oriented R-CNN
Introduction
论文题目 :Oriented R-CNN for Object Detection
论文地址 :https://arxiv.org/pdf/2101.11952v4.pdf
论文出处 :2021’ICCV
代码实现 :https://github.com/jbwang1997/OBBDetection
Idea
Oriented R-CNN是一个Two-Stage的检测器。
在the first stage上,作者进行了主要创新:提出了oriented Region Proposal Network(简称oriented RPN),该网络能 已近乎0成本的方式直接生成高质量的旋转建议框(oriented proposal) ,使得检测速度在单张2080ti上达到了15.1FPS;在the second stage上,作者沿用了ROI Transformer中的RROI Align提取旋转不变特征,并用于后续分类和回归。
Detail
Related Work
之前的Two-Stage检测器主要存在以下问题:
- 生成旋转建议框的计算成本很高
- 采用水平ROI进行分类和定向边界框回归,这样对象和特征之间的错位导致分类置信度与定位精度的不一致
Oriented R-CNN
具体细分为Oriented RPN和Oriented R-CNN Head两个部分。
Oriented RPN
其实Oriented RPN是很自然并且很直观的一个idea,但它实现的关键就在于如何直接表示oriented proposal。
在原本的RPN基础上,作者添加了两个1x1的conv layer构成了Oriented RPN。
第一个conv layer是一个回归分支,通过6A的channel输出proposal相对于anchor的偏移量:
然后通过上述公式Decoding得到:
其中是平行四边形proposal顶点相对于外部矩形上侧和右侧中点的偏移量
然后通过上述公式求得proposal四个顶点:
其中是平行四边形proposal四个顶点的坐标向量
作者将上述这个表示法称为midpoint offset representation。
第二个conv layer是一个对oriented proposal分类准确度的评分分支,不重要,具体没有展开讲解。
Oriented R-CNN Head
得到了上述的平行四边形oriented proposals后,需要转换为矩形才能用于RROI Align。
作者的做法是 延长该平行四边形两条对角线中较短的一边,以此构成矩形框
通过数学方法将转为,而后将该矩形框映射到Feature map上,再进入到后续RROI Align模块。
RROI Align部分,直接沿用了ROI Transformer中的成果,使用深度特征对齐提取旋转不变特征,并用于后续分类和回归。
Experiments
作者使用ResNet-50-FPN, ResNet-101-FPN作为Backbone,在DOTA和HSRC2016数据集上,用单张2080ti做训练和测试,达到了SOTA。
本博客所有文章均采用 CC BY-NC-SA 4.0 协议 ,禁止商用,转载请注明出处!